package JavaEE_notes.common_API;

import java.util.ArrayList;

/**
 * @description ArrayList 是一个基于数组的列表实现，提供了一个随机访问和修改元素的快速方法。
 * @author TaiZai
 * @data 2024/9/17 17:03
 */
public class api_ArrayList {
    public static void main(String[] args) {
        // ArrayList list = new ArrayList(); // 创建 ArrayList 并指定初始容量
        ArrayList<Integer> listInt = new ArrayList<>(); // 创建 ArrayList 并指定泛型
        // 1、将指定元素添加到集合的末尾
        listInt.add(1);
        listInt.add(2);
        listInt.add(3);
        listInt.add(1);
        listInt.add(2);
        listInt.add(3);
        System.out.println(listInt); // 输出 [1, 2, 3, 1, 2, 3]

        // 2、在此集合中的指定位置插入指定元素
        listInt.add(1, 4); // 在 index=1 的位置前插入 4
        System.out.println(listInt); // 输出 [1, 4, 2, 3, 1, 2, 3]

        // 3、返回指定索引处的元素
        System.out.println(listInt.get(1)); // 输出 4

        // 4、返回此列表中的元素数
        System.out.println(listInt.size()); // 输出 7

        // 5、删除指定索引处的元素，返回被删除的元素个数
        System.out.println(listInt.remove(1)); // 输出 4, 删除 index=1 的元素

        // 6、删除指定的元素，返回是否删除成功
        System.out.println(listInt.remove(2)); // 输出 true, 删除 Integer 2
        System.out.println(listInt); // 输出 [1, 2, 3, 1, 3]

        // 7、修改指定索引处的元素，返回被修改的元素
        listInt.set(1, 5); // 修改 index=1 的元素为 5
        System.out.println(listInt); // 输出 [1, 5, 3, 1, 3]

        // 8、检查此列表是否包含指定元素
        System.out.println(listInt.contains(3)); // 输出 true, 列表中包含 Integer 3

        // 9、检查此列表是否为空
        System.out.println(listInt.isEmpty()); // 输出 false, 列表中还有元素

        // 10、将此列表中的所有元素全部删除
        listInt.clear();
        System.out.println(listInt); // 输出 []
    }
}
